{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "# Conformance Checking\n",
    "*by: Sebastiaan J. van Zelst*"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "slideshow": {
     "slide_type": "skip"
    },
    "tags": []
   },
   "source": [
    "In this tutorial, we'll be focusing on *conformance checking*.\n",
    "The conceptual idea of conformance checking is rather easy, i.e., computing to what degree a given process model conforms to the exeuction of a process, as recorded by the event data.\n",
    "We are going to use the same process model as we have seen before, i.e., based on our [running example event log](data/running_example.csv):"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "![Running example BPMN-based process model describing the behavior of the simple process that we use in this tutorial](img/bpmn_running_example.png)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "slideshow": {
     "slide_type": "skip"
    },
    "tags": []
   },
   "source": [
    "However, to check conformance w.r.t. the model, we're going to use a slightly [different event log](data/running_example_broken.csv).\n",
    "In this tutorial, we'll consider two types of techniques, i.e., *token-based-replay*, and, *alignments*.\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "slideshow": {
     "slide_type": "slide"
    },
    "tags": []
   },
   "source": [
    "## Token-Based-Replay"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "slideshow": {
     "slide_type": "skip"
    },
    "tags": []
   },
   "source": [
    "In order to understand token-based-replay, we first need to cover a bit of Petri net theory.\n",
    "Let's use the Petri net based on the clean [running example event log](data/running_example.csv), as an example."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {
    "jupyter": {
     "outputs_hidden": false
    },
    "pycharm": {
     "name": "#%%\n"
    },
    "slideshow": {
     "slide_type": "fragment"
    },
    "tags": []
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<IPython.core.display.Image object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "import pandas as pd\n",
    "import pm4py\n",
    "df = pm4py.format_dataframe(pd.read_csv('data/running_example.csv', sep=';'), case_id='case_id',activity_key='activity',\n",
    "                             timestamp_key='timestamp')\n",
    "pn, im, fm = pm4py.discover_petri_net_inductive(df)\n",
    "pm4py.view_petri_net(pn, im, fm)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "slideshow": {
     "slide_type": "skip"
    },
    "tags": []
   },
   "source": [
    "### Places and Transitions\n",
    "Observe that the Petri net consists of two different type of nodes, i.e., cirlces and rectangles.\n",
    "We refer to the circles as *places* and we refer to the rectangles as *transitions*.\n",
    "Furthermore, notice that, a place can only be connected (by means of an arc) to a transition.\n",
    "Similarly, a transition can only be connected (by means of an arc) to a place.\n",
    "Hence, *places never connect directly to places* and *transitions never connect directly to transitions*."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "slideshow": {
     "slide_type": "skip"
    },
    "tags": []
   },
   "source": [
    "### Tokens, Enabledness and Transition Firing\n",
    "There is one place in the model containing a black 'dot'.\n",
    "This dot is referred to as a *token*.\n",
    "For convienence, let's call the place containing the token 'source'.\n",
    "A transition can consume and produce tokens, referred to as *firing a transition*.\n",
    "A transition is allowed to fire, if all of its 'incoming places' contain at least one token.\n",
    "Any transition for which this property holds is referred to as an *enabled transition*.\n",
    "In the example net, only the 'source' place contains a token.\n",
    "Consequently, the only transition that has a token in all of its 'incoming places' is the transition *register request*, i.e., it is enabled.\n",
    "If we diced to fire the an enabled transition, it consumes one token from each of its 'incoming places' and it produces a token in each of its 'outgoing places'.\n",
    "For example, if we *fire* the *register request* transition, it consumes the token in the source place and it produces a fresh token in its outgoing place (i.e., the place connected to it by means of an outgoing arc).\n",
    "\n",
    "*It is extremely important to note that there is no relationship between token production and consumption, i.e., tokens that are consumed cease to exist, tokens that are produced are always \"fresh tokens\"*.\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "slideshow": {
     "slide_type": "skip"
    },
    "tags": []
   },
   "source": [
    "### Token-Based-Replay - The Basics\n",
    "When we use token-based-based-replay, we are effecitvely mimicking behavior observed in the event log in the context of a given process model.\n",
    "\n",
    "Let's assume that in the event log, we observe the trace: \n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "slideshow": {
     "slide_type": "fragment"
    },
    "tags": []
   },
   "source": [
    "$\\langle \\text{register request, examine casually, check ticket, decide, reject request} \\rangle$"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "slideshow": {
     "slide_type": "skip"
    },
    "tags": []
   },
   "source": [
    "The token-based replay algorithm will simply mimick the trace in the model and keep track of the number of tokens we need to produce, respectively consume to *replay* the trace in the model.\n",
    "For example, the first activity in the trace, i.e., *register request*, can be directly mimicked by consuming the token in the source place.\n",
    "To subsequently fire the *examine causally* activity, we need the token produced by firing the *register request* transition.\n",
    "The token needs to be consumed by the *black* transition (this is referred to as an invisible transition) that connects to the output place of the *register request* transition.\n",
    "Said transition will produce two fresh tokens (observe that it has two outgoing places), one of which can subsequently be consumed by the *examine casually* transition.\n",
    "Essentially, the token-based-replay algorithm keeps repeating this rationale, until it has mimicked the complete trace.\n",
    "\n",
    "In the previous example, the trace can be completely mimicked (or *replayed*) by the model.\n",
    "However, consider the trace:"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "slideshow": {
     "slide_type": "fragment"
    },
    "tags": []
   },
   "source": [
    "$\\langle \\text{register request, examine casually, check ticket, reject request} \\rangle$"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "slideshow": {
     "slide_type": "skip"
    },
    "tags": []
   },
   "source": [
    "When analyzing the trace, we observe that a decision is missing.\n",
    "The token-based-replay algorithm can detect this, i.e., it can detect that due to the lack of the *decide* transition in the trace, when mimicking it, tokens would remain in the input places of the *decide* transition, and, similarly, tokens would be missing in the input place of the *reject request* transition.\n",
    "\n",
    "For a given event log, the token-based-replay algorithm simply mimicks every trace in the event log, and, keeps track of the number of detected problems (missing and remaining tokens when mimicking the bahvior).\n",
    "It subsequently compares the dected number of problems with the total amount of 'correct behavior' and produces a 'conformity score' (often referred to as a 'fitness' score) between $0$ and $1$.\n",
    "If the score is $1$, no problems were detected.\n",
    "If the score is $0$, no normal behavior was detected."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "slideshow": {
     "slide_type": "subslide"
    },
    "tags": []
   },
   "source": [
    "### Token-Based-Replay in pm4py"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {
    "jupyter": {
     "outputs_hidden": false
    },
    "pycharm": {
     "name": "#%%\n"
    },
    "slideshow": {
     "slide_type": "fragment"
    },
    "tags": []
   },
   "outputs": [
    {
     "data": {
      "application/json": {
       "ascii": false,
       "bar_format": null,
       "colour": null,
       "elapsed": 0.00988912582397461,
       "initial": 0,
       "n": 0,
       "ncols": null,
       "nrows": 15,
       "postfix": null,
       "prefix": "replaying log with TBR, completed variants :: ",
       "rate": null,
       "total": 6,
       "unit": "it",
       "unit_divisor": 1000,
       "unit_scale": false
      },
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "fa4996a01e5c444896cb5920ac3f460b",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "replaying log with TBR, completed variants ::   0%|          | 0/6 [00:00<?, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "{'perc_fit_traces': 100.0,\n",
       " 'average_trace_fitness': 1.0,\n",
       " 'log_fitness': 1.0,\n",
       " 'percentage_of_fitting_traces': 100.0}"
      ]
     },
     "execution_count": 2,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "pm4py.fitness_token_based_replay(df, pn, im, fm)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "slideshow": {
     "slide_type": "skip"
    },
    "tags": []
   },
   "source": [
    "In the previous example, we observe that all traces in the event log perfectly comply with the model.\n",
    "This is the case because the algorithm we used always guarantees it, i.e., it will always describe all behavior given to it in the event log.\n",
    "\n",
    "Let's consider computing fitness when using an event log that has some problems, i.e., w.r.t. the model that we learned on the clean event log."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {
    "slideshow": {
     "slide_type": "subslide"
    },
    "tags": []
   },
   "outputs": [
    {
     "data": {
      "application/json": {
       "ascii": false,
       "bar_format": null,
       "colour": null,
       "elapsed": 0.012327432632446289,
       "initial": 0,
       "n": 0,
       "ncols": null,
       "nrows": 15,
       "postfix": null,
       "prefix": "replaying log with TBR, completed variants :: ",
       "rate": null,
       "total": 6,
       "unit": "it",
       "unit_divisor": 1000,
       "unit_scale": false
      },
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "f7e9f4aa0c4d497ebd9867b3ca8b7e19",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "replaying log with TBR, completed variants ::   0%|          | 0/6 [00:00<?, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "{'perc_fit_traces': 16.666666666666668,\n",
       " 'average_trace_fitness': 0.8077731092436974,\n",
       " 'log_fitness': 0.8156108597285068,\n",
       " 'percentage_of_fitting_traces': 16.666666666666668}"
      ]
     },
     "execution_count": 3,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df_problems = pm4py.format_dataframe(pd.read_csv('data/running_example_broken.csv', sep=';'), case_id='case:concept:name',activity_key='concept:name',\n",
    "                             timestamp_key='time:timestamp')\n",
    "pm4py.fitness_token_based_replay(df_problems, pn, im, fm)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "slideshow": {
     "slide_type": "skip"
    },
    "tags": []
   },
   "source": [
    "In this case, only $16\\frac{2}{3}$ percent of the cases fits w.r.t. the model\n",
    "Yet, the total fitness score is still $0.8$.\n",
    "We can roughly interpret this as $80\\%$ of the behavior in the event log is fitting the model."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "slideshow": {
     "slide_type": "subslide"
    },
    "tags": []
   },
   "source": [
    "### Using Other Process Model Formalisms"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "slideshow": {
     "slide_type": "skip"
    },
    "tags": []
   },
   "source": [
    "In ``pm4py``, the token-based-replay algorithm is only defined for Petri nets.\n",
    "Hence, if we have other model types, e.g., a process tree or a BPMN model, we need to convert these to Petri nets."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {
    "slideshow": {
     "slide_type": "fragment"
    },
    "tags": []
   },
   "outputs": [
    {
     "data": {
      "application/json": {
       "ascii": false,
       "bar_format": null,
       "colour": null,
       "elapsed": 0.012128591537475586,
       "initial": 0,
       "n": 0,
       "ncols": null,
       "nrows": 15,
       "postfix": null,
       "prefix": "replaying log with TBR, completed variants :: ",
       "rate": null,
       "total": 6,
       "unit": "it",
       "unit_divisor": 1000,
       "unit_scale": false
      },
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "2617d52d622d4c4589455dfc514ef24b",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "replaying log with TBR, completed variants ::   0%|          | 0/6 [00:00<?, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "{'perc_fit_traces': 16.666666666666668,\n",
       " 'average_trace_fitness': 0.8077731092436974,\n",
       " 'log_fitness': 0.8156108597285068,\n",
       " 'percentage_of_fitting_traces': 16.666666666666668}"
      ]
     },
     "execution_count": 4,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "tree = pm4py.discover_process_tree_inductive(df)\n",
    "pn, im, fm = pm4py.convert_to_petri_net(tree)\n",
    "pm4py.fitness_token_based_replay(df_problems, pn, im, fm)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {
    "slideshow": {
     "slide_type": "subslide"
    },
    "tags": []
   },
   "outputs": [
    {
     "data": {
      "application/json": {
       "ascii": false,
       "bar_format": null,
       "colour": null,
       "elapsed": 0.012835025787353516,
       "initial": 0,
       "n": 0,
       "ncols": null,
       "nrows": 15,
       "postfix": null,
       "prefix": "replaying log with TBR, completed variants :: ",
       "rate": null,
       "total": 6,
       "unit": "it",
       "unit_divisor": 1000,
       "unit_scale": false
      },
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "c6af2c45c34846cb886acf6f06c78645",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "replaying log with TBR, completed variants ::   0%|          | 0/6 [00:00<?, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "{'perc_fit_traces': 16.666666666666668,\n",
       " 'average_trace_fitness': 0.8077731092436974,\n",
       " 'log_fitness': 0.8156108597285068,\n",
       " 'percentage_of_fitting_traces': 16.666666666666668}"
      ]
     },
     "execution_count": 5,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "bpmn = pm4py.discover_process_tree_inductive(df)\n",
    "pn, im, fm = pm4py.convert_to_petri_net(bpmn)\n",
    "pm4py.fitness_token_based_replay(df_problems, pn, im, fm)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "slideshow": {
     "slide_type": "skip"
    },
    "tags": []
   },
   "source": [
    "In general, a process tree, i.e. no matter the source (whether it is designed by hand or discovered by a discovery algorithm), can always be translated into a Petri net, without any problems.\n",
    "For BPMN models this is not the case.\n",
    "In the example, we use the inductive miner, which always yields a process tree.\n",
    "As such, the BPMN model we discovered is actually a process tree transformed into a BPMN model.\n",
    "As a consequence, the subsequent transformation into a Petri net will not yield any problems.\n",
    "However, in general, various quality issues can emerge when converting an arbitrary BPMN model into a Petri net, i.e., from a conformance checking perspective."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "slideshow": {
     "slide_type": "subslide"
    },
    "tags": []
   },
   "source": [
    "## Diagnostics"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "slideshow": {
     "slide_type": "skip"
    },
    "tags": []
   },
   "source": [
    "Thusfar, we have shown how to compute a number, quantifying how well the given event log and model conform to one another.\n",
    "However, token-based-replay does not provide detailed diangostics on the problems detected (albeit we did implement rudimentary diagnostics based on token-based-replay).\n",
    "To compute *conformance diagnostics* we advocate the use of *alignments*.\n",
    "For convienence, let's again consider our process model:"
   ]
  },
  {
   "attachments": {
    "aee68a5e-ef71-4cf5-9304-32d6856f15e2.png": {
     "image/png": "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wK3ATh7X+HLHedbnABQDAc6cWamVUjedQEgZpWbfgDdLtZlXwwUsX2ynIc0OcCI97XfaZ3VdbqZ2C3BWE9w0tZ5D2okFRyiFhbQUoNB5rBMVLd9hx6+WScuWNzvvkudFJfZwN888R17X+DTHd1bnABTHb/XvaMjR2bNno66uruiOO+6IxwDlLVy4MNq7d2/8X+f44osvojVr1rjf3n8xjO6///74ncrGjx8fvf766274scceiz766CM3jMZjO6FVaF+9fv26S7t3747OnDkT9Wdwozlz5sSfQL20XlevXh3132xHq1atisdWdsstt0Q7d+6M+m+AogceeCA6efJk/E7nuHr1qnudNm2aewUque+++9x5rNOunUXLd+h8pfOWzl86j+l8lrelS5e669nmzZvd+gGSnD9/Plq+fHnU3d0d3XXXXfHY7OVxjdexrGNadIzrWE/CvUf7I8CZs88//zzXEwraRydlWOrJvBouYNljO6GVXLt2LRo1apRLCsLJd77znabcjLajWoObptODnKdOnXK/HUhr4sSJ7rW3t9e9doKi5TuKENwUFZzZsWOHWy9aPwQ5EdK++vTTT7uCVmvXro3H5ifNNV777b59++L/0ksb3DTce7Q3ApxAwU2dOtW9Xr582b22u0ZkXg0XsOywndBqwgxvT09PNH/+/Pg/1KPe4Kbp9CDn7bffHg8BCBUt31GU4KbR+tB60fqZO3dux50/kcxqrWhfHTdunBtu1r4aXuPD4+7QoUPR8ePH4//S0TSqCW4a7j3a1wjVU4+Hc6WLVKmAzejRo9u2Cvf69evd67Zt29wrUMn7778fTZ48Obp48WLbl/5tZObVV+vFD8nYTqVxji82y3tMmDCh6TejptXP8Y0KbvqyOscUGecOVIv8Yf1qzXcULbjp036h88nBgwddtfVly5a5/cNK/KL9qVT3Bx98EL333nvRpk2b3DhVS1fJzSLsq0nHnQKxqmEjqnGTJhbUiPsG7hHbkGuJMwdqxFUN+avzBTXqqllXSvqselFtpwZg6YAimTpd0rZWwnBqBFrHQ56NQTdD1g1Q6zyic49SO51T8sZ2Ko9zPKrVyud469hCr42WV6cERcG5A9Uif9gY1eY7tAxaFi2Tlq2otJzqiErLSurMpH1a1+ci5qf94+4Xv/jF4DGulKbzx2qP23IaOa1OpGuQYjg6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"
    }
   },
   "cell_type": "markdown",
   "metadata": {
    "slideshow": {
     "slide_type": "fragment"
    },
    "tags": []
   },
   "source": [
    "![bpmn_running_example.png](attachment:aee68a5e-ef71-4cf5-9304-32d6856f15e2.png)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "slideshow": {
     "slide_type": "fragment"
    },
    "tags": []
   },
   "source": [
    "### Alignments\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "slideshow": {
     "slide_type": "skip"
    },
    "tags": []
   },
   "source": [
    "Simply put, an *alignmnet* maps the observed trace onto the *closest* firing sequence described by the model:\n",
    "Let's revisit our earlier example, i.e., "
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "slideshow": {
     "slide_type": "fragment"
    },
    "tags": []
   },
   "source": [
    "$\\langle \\text{register request, examine casually, check ticket, decide, reject request} \\rangle$."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "slideshow": {
     "slide_type": "skip"
    },
    "tags": []
   },
   "source": [
    "An alignment of the this trace looks as follows: "
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "slideshow": {
     "slide_type": "fragment"
    },
    "tags": []
   },
   "source": [
    "$\\langle \\text{(register request,register request), (examine casually, examine casually), (check ticket, check ticket), (decide, decide), (reject request, reject request)} \\rangle$.\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "slideshow": {
     "slide_type": "skip"
    },
    "tags": []
   },
   "source": [
    "The alignment is a sequence of pairs, e.g., $(register request,register request)$, $(examine casually, examine casually)$.\n",
    "In each pair, the first element corresponds to observed behavior in the log whereas the second argument corresponds to an action in the model.\n",
    "Hence, the closest 'behavior' that the observed trace can be moapped to is  $\\langle \\text{register request, examine casually, check ticket, decide, reject request} \\rangle$, i.e., exactly the same sequence of action as the observed trace.\n",
    "This makes sense as the model actually describes the observed trace."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "slideshow": {
     "slide_type": "subslide"
    },
    "tags": []
   },
   "source": [
    "### Non-Fitting Behavior"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "slideshow": {
     "slide_type": "skip"
    },
    "tags": []
   },
   "source": [
    "In certain cases, observed behavior cannot be mimicked by the model, or, behavior may be missing.\n",
    "In both cases, we use the $\\gg$ symbol to represent this.\n",
    "\n",
    "For example, consider the trace: "
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "slideshow": {
     "slide_type": "fragment"
    },
    "tags": []
   },
   "source": [
    "$\\langle \\text{register request, register request, examine casually, check ticket, reject request} \\rangle$"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "slideshow": {
     "slide_type": "skip"
    },
    "tags": []
   },
   "source": [
    "It is quite easy to see that, given the reference model presented earlier, the *register request* transition is duplicated, and, the *decide* activity is missing.\n",
    "An alignment of the trace w.r.t. the model shown before quantifies this exactly:"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "slideshow": {
     "slide_type": "fragment"
    },
    "tags": []
   },
   "source": [
    "$\\langle \\text{(register request, register request), (register request, }\\gg\\text{), (examine casually, examine casually), (check ticket, check ticket), (}\\gg\\text{, decide), (reject request, reject request)} \\rangle$"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "slideshow": {
     "slide_type": "skip"
    },
    "tags": []
   },
   "source": [
    "The elements of the alignment (which we refer to as moves) reflect our observation before."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "slideshow": {
     "slide_type": "fragment"
    },
    "tags": []
   },
   "source": [
    "1. The firs *register request* activity is also described by the model\n",
    "2. The second *register request* activity is not described by the model (i.e., the first argument refers to the trace, the 2nd argument $\\gg$ represents to the model).\n",
    "3. The *examine casually* activity is described by the log and the model\n",
    "4. The *check ticket* activity is described by the log and the model\n",
    "5. The *decide* activity was not observed in the data, yet, the model describes that it is supposed to be observed\n",
    "6. The *reject request* activity is described by the log and the model"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "slideshow": {
     "slide_type": "skip"
    },
    "tags": []
   },
   "source": [
    "Observe that, according to the alignment, the given trace should be mapped on the following model behavior:"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "slideshow": {
     "slide_type": "fragment"
    },
    "tags": []
   },
   "source": [
    "$\\langle \\text{register request, examine casually, check ticket, decide, reject request} \\rangle$"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "slideshow": {
     "slide_type": "subslide"
    },
    "tags": []
   },
   "source": [
    "### Alignments in pm4py"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "slideshow": {
     "slide_type": "skip"
    },
    "tags": []
   },
   "source": [
    "Like token-based-replay, computing alignments in ``pm4py`` is rather straightforward:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {
    "slideshow": {
     "slide_type": "fragment"
    },
    "tags": []
   },
   "outputs": [
    {
     "data": {
      "application/json": {
       "ascii": false,
       "bar_format": null,
       "colour": null,
       "elapsed": 0.010935306549072266,
       "initial": 0,
       "n": 0,
       "ncols": null,
       "nrows": 15,
       "postfix": null,
       "prefix": "aligning log, completed variants :: ",
       "rate": null,
       "total": 6,
       "unit": "it",
       "unit_divisor": 1000,
       "unit_scale": false
      },
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "e22c86b3da32455bb31e28ca5db6e7aa",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "aligning log, completed variants ::   0%|          | 0/6 [00:00<?, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "[{'alignment': [('>>', 'register request'),\n",
       "   ('>>', None),\n",
       "   ('examine thoroughly', 'examine thoroughly'),\n",
       "   ('check ticket', 'check ticket'),\n",
       "   ('decide', 'decide'),\n",
       "   ('>>', None),\n",
       "   ('reject request', 'reject request')],\n",
       "  'cost': 10002,\n",
       "  'visited_states': 7,\n",
       "  'queued_states': 22,\n",
       "  'traversed_arcs': 22,\n",
       "  'lp_solved': 1,\n",
       "  'fitness': 0.8888888888888888,\n",
       "  'bwc': 90002},\n",
       " {'alignment': [('register request', 'register request'),\n",
       "   ('>>', None),\n",
       "   ('check ticket', 'check ticket'),\n",
       "   ('examine casually', 'examine casually'),\n",
       "   ('>>', 'decide'),\n",
       "   ('>>', None),\n",
       "   ('pay compensation', 'pay compensation')],\n",
       "  'cost': 10002,\n",
       "  'visited_states': 7,\n",
       "  'queued_states': 23,\n",
       "  'traversed_arcs': 23,\n",
       "  'lp_solved': 2,\n",
       "  'fitness': 0.8888888888888888,\n",
       "  'bwc': 90002},\n",
       " {'alignment': [('register request', 'register request'),\n",
       "   ('>>', None),\n",
       "   ('>>', 'examine casually'),\n",
       "   ('check ticket', 'check ticket'),\n",
       "   ('decide', 'decide'),\n",
       "   ('reinitiate request', '>>'),\n",
       "   ('>>', None),\n",
       "   ('pay compensation', 'pay compensation')],\n",
       "  'cost': 20002,\n",
       "  'visited_states': 8,\n",
       "  'queued_states': 27,\n",
       "  'traversed_arcs': 27,\n",
       "  'lp_solved': 5,\n",
       "  'fitness': 0.8,\n",
       "  'bwc': 100002},\n",
       " {'alignment': [('register request', 'register request'),\n",
       "   ('>>', None),\n",
       "   ('check ticket', 'check ticket'),\n",
       "   ('examine thoroughly', 'examine thoroughly'),\n",
       "   ('decide', 'decide'),\n",
       "   ('>>', None),\n",
       "   ('reject request', 'reject request')],\n",
       "  'cost': 2,\n",
       "  'visited_states': 7,\n",
       "  'queued_states': 24,\n",
       "  'traversed_arcs': 24,\n",
       "  'lp_solved': 1,\n",
       "  'fitness': 1.0,\n",
       "  'bwc': 100002},\n",
       " {'alignment': [('register request', 'register request'),\n",
       "   ('>>', None),\n",
       "   ('examine casually', 'examine casually'),\n",
       "   ('check ticket', 'check ticket'),\n",
       "   ('decide', 'decide'),\n",
       "   ('reinitiate the request for real', '>>'),\n",
       "   ('>>', 'reinitiate request'),\n",
       "   ('>>', None),\n",
       "   ('check ticket', 'check ticket'),\n",
       "   ('examine casually', 'examine casually'),\n",
       "   ('decide', 'decide'),\n",
       "   ('>>', 'reinitiate request'),\n",
       "   ('>>', None),\n",
       "   ('examine casually', 'examine casually'),\n",
       "   ('check ticket', 'check ticket'),\n",
       "   ('decide', 'decide'),\n",
       "   ('>>', None),\n",
       "   ('reject request', 'reject request')],\n",
       "  'cost': 30004,\n",
       "  'visited_states': 18,\n",
       "  'queued_states': 59,\n",
       "  'traversed_arcs': 59,\n",
       "  'lp_solved': 19,\n",
       "  'fitness': 0.8235294117647058,\n",
       "  'bwc': 170002},\n",
       " {'alignment': [('register request', 'register request'),\n",
       "   ('>>', None),\n",
       "   ('>>', 'examine casually'),\n",
       "   ('check ticket', 'check ticket'),\n",
       "   ('>>', 'decide'),\n",
       "   ('decide something', '>>'),\n",
       "   ('>>', None),\n",
       "   ('pay compensation', 'pay compensation')],\n",
       "  'cost': 30002,\n",
       "  'visited_states': 8,\n",
       "  'queued_states': 25,\n",
       "  'traversed_arcs': 25,\n",
       "  'lp_solved': 2,\n",
       "  'fitness': 0.6666666666666667,\n",
       "  'bwc': 90002}]"
      ]
     },
     "execution_count": 6,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "pn, im, fm = pm4py.discover_petri_net_inductive(df)\n",
    "pm4py.conformance_diagnostics_alignments(df_problems, pn, im, fm)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "slideshow": {
     "slide_type": "skip"
    },
    "tags": []
   },
   "source": [
    "Like token-based-replay, alignments can also be used to quantify 'fitness':"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {
    "slideshow": {
     "slide_type": "subslide"
    },
    "tags": []
   },
   "outputs": [
    {
     "data": {
      "application/json": {
       "ascii": false,
       "bar_format": null,
       "colour": null,
       "elapsed": 0.011507749557495117,
       "initial": 0,
       "n": 0,
       "ncols": null,
       "nrows": 15,
       "postfix": null,
       "prefix": "aligning log, completed variants :: ",
       "rate": null,
       "total": 6,
       "unit": "it",
       "unit_divisor": 1000,
       "unit_scale": false
      },
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "85b88bb2093547bcb6586352566c96a0",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "aligning log, completed variants ::   0%|          | 0/6 [00:00<?, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "{'percFitTraces': 16.666666666666668,\n",
       " 'averageFitness': 0.8446623093681916,\n",
       " 'percentage_of_fitting_traces': 16.666666666666668,\n",
       " 'average_trace_fitness': 0.8446623093681916,\n",
       " 'log_fitness': 0.843731055042718}"
      ]
     },
     "execution_count": 7,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "pm4py.fitness_alignments(df_problems, pn, im, fm)"
   ]
  }
 ],
 "metadata": {
  "celltoolbar": "Slideshow",
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.10.1"
  },
  "rise": {
   "enable_chalkboard": true,
   "footer": "",
   "overlay": ""
  },
  "vscode": {
   "interpreter": {
    "hash": "9c7007b39dafc711984a86ea23c9ef98efa1ef34fe1cef62a06d5e45f97dbcb0"
   }
  }
 },
 "nbformat": 4,
 "nbformat_minor": 4
}
